﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdbool.h>
//实现一个函数is_prime，判断一个数是不是素数。
//利用上面实现的is_prime函数，打印100到200之间的素数。
// 素数定义：大于1的自然数，除了1和它本身以外不再有其他因数
_Bool is_prime(int x) 
{
    if (x <= 1)
    {
        return false;// 小于等于1的数不是素数
    }
    if (x == 2 || x == 3)
    {
        return true;// 2和3是特例，它们是素数
    }
    // 检查从2到num的平方根之间的所有整数
    for (int i = 2; i * i <= x; i++)
    {
        if (x % i == 0)
        {
            return false;
         }
        else
        {
            return true;
        }
    }
}
int main() 
{
    int a = 0;
    printf("输入一个正整数;");
    scanf("%d", &a);
    if (is_prime(a))
     {
       {
          printf("%d 是素数 \n", a);
        }
       else
       {
            printf("%d 不是素数 \n", a);
        }
     }
    //上面注释的这段代码是判断一个具体的数字是否是素数
    //下面这段代码是判断100到200之间的素数
   // for (a = 100; a <= 200; a++) 
    //{
        if (is_prime(a))
        {
            printf("%d 是素数 \n",a);
        }
        else
        {
            printf("%d 不是素数 \n",a);
        }
   //}
    return 0;
}



